package com.lesso.zgs.sunflower.infra.assembler;

import com.lesso.zgs.sunflower.model.Device;
import com.lesso.zgs.sunflower.pojo.dto.DeviceDTO;
import com.lesso.zgs.sunflower.pojo.vo.DeviceVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * DeviceAssembler
 *
 * @author zgs
 * @since 2025-07-03
 */
@Mapper
public interface DeviceAssembler {
    DeviceAssembler INSTANCE = Mappers.getMapper(DeviceAssembler.class);

    Device dtoToEntity(DeviceDTO dto);

    DeviceDTO entityToDto(Device device);

    List<DeviceVO> entityListToVOList(List<Device> devices);
} 